<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.4"/>
<title>SPI Driver: drv/spi_drv.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">SPI Driver
   &#160;<span id="projectnumber">1.1</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.4 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>Globals</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('spi__drv_8h_source.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="headertitle">
<div class="title">spi_drv.h</div>  </div>
</div><!--header-->
<div class="contents">
<a href="spi__drv_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;<span class="preprocessor">#ifndef _SPI_DRV_H</span></div>
<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define _SPI_DRV_H</span></div>
<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;</div>
<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;<span class="preprocessor">#include &quot;MPC5604B_0M27V_0102.h&quot;</span></div>
<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;<span class="preprocessor">#include &lt;string.h&gt;</span></div>
<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;</div>
<div class="line"><a name="l00143"></a><span class="lineno"><a class="code" href="spi__drv_8h.html#a407e231521f36cb214629f1c210ebb33">  143</a></span>&#160;<span class="preprocessor">#define SPI_ERROR();      while(1){}</span></div>
<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;</div>
<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;</div>
<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;<span class="preprocessor">#define SPI_BAUD_25000      0x29</span></div>
<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define SPI_BAUD_62500      0x09</span></div>
<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define SPI_BAUD_100000     0x27</span></div>
<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define SPI_BAUD_500000     0x06</span></div>
<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define SPI_BAUD_1000000    0x05</span></div>
<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define SPI_BAUD_4000000    0x03</span></div>
<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00204"></a><span class="lineno"><a class="code" href="group__group2.html#ga9b5018e9d6279fd4f2416aa3891fb106">  204</a></span>&#160;<span class="preprocessor">#define SPI_DELAY_DEFAULT 0x00080808</span></div>
<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00225"></a><span class="lineno"><a class="code" href="group__group3.html#gaded631ad24482040bcf4ee3a9620299a">  225</a></span>&#160;<span class="preprocessor">#define SPI_MAX_DATA_SIZE   128</span></div>
<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00231"></a><span class="lineno"><a class="code" href="group__group3.html#ga61732f4cc91effc15fdea77bf11bd6a7">  231</a></span>&#160;<span class="preprocessor">#define SPI_FRAMESIZE 16</span></div>
<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00272"></a><span class="lineno"><a class="code" href="group__group4.html#gae8ecf743145569e5b67dadd2f3b37cc7">  272</a></span>&#160;<span class="preprocessor">#define DSPI0_PORT &#39;A&#39;</span></div>
<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00279"></a><span class="lineno"><a class="code" href="group__group4.html#gab670645d0590ef0f380f06a9bc1e8ffc">  279</a></span>&#160;<span class="preprocessor">#define DSPI1_PORT &#39;C&#39;</span></div>
<div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00285"></a><span class="lineno"><a class="code" href="group__group4.html#gabb12b5473a73d2b6fd70881a6bcd1eaf">  285</a></span>&#160;<span class="preprocessor">#define DSPI2_PORT &#39;E&#39;</span></div>
<div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00292"></a><span class="lineno"><a class="code" href="struct___s_p_i___d_r_v.html">  292</a></span>&#160;<span class="keyword">struct </span><a class="code" href="struct___s_p_i___d_r_v.html">_SPI_DRV</a></div>
<div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;{</div>
<div class="line"><a name="l00294"></a><span class="lineno"><a class="code" href="struct___s_p_i___d_r_v.html#a8c2a4272a8f7cb28ef5cb93d2bbdfe7b">  294</a></span>&#160;    uint16_t* <a class="code" href="struct___s_p_i___d_r_v.html#a8c2a4272a8f7cb28ef5cb93d2bbdfe7b">RX_Data</a>;  </div>
<div class="line"><a name="l00295"></a><span class="lineno"><a class="code" href="struct___s_p_i___d_r_v.html#ad272ecadea65ca00df2f0cc9e868ab66">  295</a></span>&#160;    uint16_t <a class="code" href="struct___s_p_i___d_r_v.html#ad272ecadea65ca00df2f0cc9e868ab66">RX_end_data</a>;   </div>
<div class="line"><a name="l00297"></a><span class="lineno"><a class="code" href="struct___s_p_i___d_r_v.html#a9dae312df8e91e96acbefc6054b9b33d">  297</a></span>&#160;    uint8_t <a class="code" href="struct___s_p_i___d_r_v.html#a9dae312df8e91e96acbefc6054b9b33d">RX_Data_Size</a>; </div>
<div class="line"><a name="l00298"></a><span class="lineno"><a class="code" href="struct___s_p_i___d_r_v.html#af48cc5f7cde524793956f5d7b3223b48">  298</a></span>&#160;    uint8_t <a class="code" href="struct___s_p_i___d_r_v.html#af48cc5f7cde524793956f5d7b3223b48">RX_Index</a>;   </div>
<div class="line"><a name="l00299"></a><span class="lineno"><a class="code" href="struct___s_p_i___d_r_v.html#aeeb6d504e17e93b5f68871a8902a1192">  299</a></span>&#160;    uint16_t* <a class="code" href="struct___s_p_i___d_r_v.html#aeeb6d504e17e93b5f68871a8902a1192">TX_Data</a>; </div>
<div class="line"><a name="l00300"></a><span class="lineno"><a class="code" href="struct___s_p_i___d_r_v.html#a60813ca9863f226c3985a2ea529d6699">  300</a></span>&#160;    uint8_t <a class="code" href="struct___s_p_i___d_r_v.html#a60813ca9863f226c3985a2ea529d6699">TX_Data_Size</a>; </div>
<div class="line"><a name="l00301"></a><span class="lineno"><a class="code" href="struct___s_p_i___d_r_v.html#abb6d2bd838d651ea1ce4f67842aa81c4">  301</a></span>&#160;    uint8_t <a class="code" href="struct___s_p_i___d_r_v.html#abb6d2bd838d651ea1ce4f67842aa81c4">TX_Index</a>;   </div>
<div class="line"><a name="l00302"></a><span class="lineno"><a class="code" href="struct___s_p_i___d_r_v.html#a76c0ed371181cdc8f053170de8144ca2">  302</a></span>&#160;    uint8_t <a class="code" href="struct___s_p_i___d_r_v.html#a76c0ed371181cdc8f053170de8144ca2">Completed</a>;  </div>
<div class="line"><a name="l00303"></a><span class="lineno"><a class="code" href="struct___s_p_i___d_r_v.html#a9ac4c1f881137da2601ed5d333bb5989">  303</a></span>&#160;    uint8_t <a class="code" href="struct___s_p_i___d_r_v.html#a9ac4c1f881137da2601ed5d333bb5989">State</a>; </div>
<div class="line"><a name="l00305"></a><span class="lineno"><a class="code" href="struct___s_p_i___d_r_v.html#a47cd5611a81f1fdbfaaaf073dac0e975">  305</a></span>&#160;    uint8_t <a class="code" href="struct___s_p_i___d_r_v.html#a47cd5611a81f1fdbfaaaf073dac0e975">Error</a>;      </div>
<div class="line"><a name="l00306"></a><span class="lineno"><a class="code" href="struct___s_p_i___d_r_v.html#a38d77c111691a5a74542dd2ca9ccf6ce">  306</a></span>&#160;    <span class="keyword">volatile</span> <span class="keyword">struct </span>DSPI_tag * <a class="code" href="struct___s_p_i___d_r_v.html#a38d77c111691a5a74542dd2ca9ccf6ce">DSPI</a>; </div>
<div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;    <span class="comment">//Basic init/get/set</span></div>
<div class="line"><a name="l00308"></a><span class="lineno"><a class="code" href="struct___s_p_i___d_r_v.html#aead12928b2c4e6898c71c73b32315770">  308</a></span>&#160;    void (*<a class="code" href="struct___s_p_i___d_r_v.html#aead12928b2c4e6898c71c73b32315770" title="Initiatlisation method. Must be called before using the driver. . ">init</a>)(int8_t, int32_t); </div>
<div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;    <span class="comment">//Basic Communication</span></div>
<div class="line"><a name="l00317"></a><span class="lineno"><a class="code" href="struct___s_p_i___d_r_v.html#aaa043d94a20a9a8b13a062be3944e679">  317</a></span>&#160;    void (*<a class="code" href="struct___s_p_i___d_r_v.html#aaa043d94a20a9a8b13a062be3944e679" title="Exchange data (Master). Allows a full-duplex 16-bit data transfer where the module is the master...">exchange</a>)(<span class="keyword">const</span> uint16_t*, uint16_t*);  </div>
<div class="line"><a name="l00328"></a><span class="lineno"><a class="code" href="struct___s_p_i___d_r_v.html#a247fbfc90fac794d9c14e81848e53443">  328</a></span>&#160;    void (*<a class="code" href="struct___s_p_i___d_r_v.html#a247fbfc90fac794d9c14e81848e53443" title="Write data (Master). Allows a half-duplex data transmission where the module will transmit a 16-bit d...">write</a>)(<span class="keyword">const</span> uint16_t*);  </div>
<div class="line"><a name="l00338"></a><span class="lineno"><a class="code" href="struct___s_p_i___d_r_v.html#a0394bc0b91f6bb1a769c0f6added863a">  338</a></span>&#160;    void (*<a class="code" href="struct___s_p_i___d_r_v.html#a0394bc0b91f6bb1a769c0f6added863a" title="Read data (Master). Allows a half-duplex data transmission where the module will receive a 16-bit dat...">read</a>)(uint16_t*);    </div>
<div class="line"><a name="l00348"></a><span class="lineno"><a class="code" href="struct___s_p_i___d_r_v.html#a086ad89b79b23005b984e80dc5e65b92">  348</a></span>&#160;    void (*<a class="code" href="struct___s_p_i___d_r_v.html#a086ad89b79b23005b984e80dc5e65b92" title="Write data (Slave). The module will write the data to its TX_Buffer as a slave, ready to be read by a...">show</a>)(<span class="keyword">const</span> uint16_t*, int8_t);  </div>
<div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;    <span class="comment">//Array Transfering</span></div>
<div class="line"><a name="l00363"></a><span class="lineno"><a class="code" href="struct___s_p_i___d_r_v.html#a9bb35941a1c307a87268f643dcf14397">  363</a></span>&#160;    void (*<a class="code" href="struct___s_p_i___d_r_v.html#a9bb35941a1c307a87268f643dcf14397" title="Exchange data array (Master). Allows a full-duplex data transmission where the module will transmit a...">exchange_array</a>)(<span class="keyword">const</span> uint16_t*, uint16_t*, int8_t, int8_t); </div>
<div class="line"><a name="l00385"></a><span class="lineno"><a class="code" href="struct___s_p_i___d_r_v.html#a41173e3adcf94d40c1aaa34767bf638f">  385</a></span>&#160;    void (*<a class="code" href="struct___s_p_i___d_r_v.html#a41173e3adcf94d40c1aaa34767bf638f" title="Write data array (Master). Allows a half-duplex data transmission where the module will transmit an a...">write_array</a>)(<span class="keyword">const</span> uint16_t*, int8_t, int8_t); </div>
<div class="line"><a name="l00402"></a><span class="lineno"><a class="code" href="struct___s_p_i___d_r_v.html#acacca74950b68d3dfeeb4b43d5a17234">  402</a></span>&#160;    void (*<a class="code" href="struct___s_p_i___d_r_v.html#acacca74950b68d3dfeeb4b43d5a17234" title="Read data array (Master). Allows a half-duplex data transmission where the module will receive an arr...">read_array</a>)(uint16_t*, int8_t, int8_t);  </div>
<div class="line"><a name="l00419"></a><span class="lineno"><a class="code" href="struct___s_p_i___d_r_v.html#a5f87e1c352b3224fe2a6bed5db0ccf12">  419</a></span>&#160;    void (*<a class="code" href="struct___s_p_i___d_r_v.html#a5f87e1c352b3224fe2a6bed5db0ccf12" title="Read data array, given size (Slave). Allows a half-duplex data transmission where the module will rec...">listen</a>)(uint16_t*, int8_t, int8_t);  </div>
<div class="line"><a name="l00436"></a><span class="lineno"><a class="code" href="struct___s_p_i___d_r_v.html#adca794807f12ed1014f0e08fbf17c695">  436</a></span>&#160;    void (*<a class="code" href="struct___s_p_i___d_r_v.html#adca794807f12ed1014f0e08fbf17c695" title="Read data array, given terminating data (Slave). Allows a half-duplex data transmission where the mod...">listen_till</a>)(uint16_t*, uint16_t, int8_t); </div>
<div class="line"><a name="l00455"></a><span class="lineno"><a class="code" href="struct___s_p_i___d_r_v.html#aa5e2288fb7202e84696e40a0e35b16b7">  455</a></span>&#160;    void (*<a class="code" href="struct___s_p_i___d_r_v.html#aa5e2288fb7202e84696e40a0e35b16b7" title="Write data array (Slave). The module will write the data to its TX_Buffer as a slave, ready to be read by a master.The size of the array is limited by the MAX_DATA_SIZE macro. It can either run on foreground, in which case the program will wait for the data to be transferred, or it can also run in background, but calling another method of the driver before this data is read will result in its loss. Therefore always wait for the Completed flag before moving on. . ">show_array</a>)(<span class="keyword">const</span> uint16_t*, int8_t, int8_t); </div>
<div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;    <span class="comment">//Handlers</span></div>
<div class="line"><a name="l00474"></a><span class="lineno"><a class="code" href="struct___s_p_i___d_r_v.html#a5684ac71e5067cfaf0edf2fd8870e871">  474</a></span>&#160;    void (*<a class="code" href="struct___s_p_i___d_r_v.html#a5684ac71e5067cfaf0edf2fd8870e871" title="End of Queue Interrupt Handler (Unused). The handler is not vectored to the INTC in this version...">EOQI_Handler</a>)(void);  </div>
<div class="line"><a name="l00479"></a><span class="lineno"><a class="code" href="struct___s_p_i___d_r_v.html#ab88d0229b263cbe779f1a0ea8a1bb20c">  479</a></span>&#160;    void (*<a class="code" href="struct___s_p_i___d_r_v.html#ab88d0229b263cbe779f1a0ea8a1bb20c" title="Transfer Complete Interrupt Handler. An interrupt handler that clears the flag and the proceeds on do...">TCI_Handler</a>)(void);   </div>
<div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;};</div>
<div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__group5.html#gaa3f08b6b790aa1596d6f41a122c17aad" title="Initialisation function for SPI driver. Initializes the SPI variable with appropriate assingments on ...">initialise_SPI_DRIVER</a>(<span class="keywordtype">void</span>);  </div>
<div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160;<span class="keyword">extern</span> <span class="keyword">struct </span><a class="code" href="struct___s_p_i___d_r_v.html">_SPI_DRV</a> <a class="code" href="group__group5.html#ga2365cce3281e8859c38a37edaced7e89" title="SPI driver instances. Variables defined on the driver structure, providing an Object Oriented user in...">SPI</a>[3];      </div>
<div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;<span class="comment">//Public methods</span></div>
<div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;</div>
<div class="line"><a name="l00523"></a><span class="lineno">  523</span>&#160;<span class="comment">//Basic init/get/set</span></div>
<div class="line"><a name="l00524"></a><span class="lineno">  524</span>&#160;<span class="keywordtype">void</span> _spi_drv_init_dspi0(int8_t baud_rate, int32_t delay);</div>
<div class="line"><a name="l00525"></a><span class="lineno">  525</span>&#160;<span class="keywordtype">void</span> _spi_drv_init_dspi1(int8_t baud_rate, int32_t delay);</div>
<div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;<span class="keywordtype">void</span> _spi_drv_init_dspi2(int8_t baud_rate, int32_t delay);</div>
<div class="line"><a name="l00527"></a><span class="lineno">  527</span>&#160;<span class="keywordtype">void</span> _spi_drv_init(int8_t i, int8_t baud_rate, int32_t delay);</div>
<div class="line"><a name="l00528"></a><span class="lineno">  528</span>&#160;</div>
<div class="line"><a name="l00529"></a><span class="lineno">  529</span>&#160;<span class="comment">//Basic Communication</span></div>
<div class="line"><a name="l00530"></a><span class="lineno">  530</span>&#160;<span class="keywordtype">void</span> _spi_drv_exchange_dspi0(<span class="keyword">const</span> uint16_t* TX_data, uint16_t* RX_data);</div>
<div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;<span class="keywordtype">void</span> _spi_drv_exchange_dspi1(<span class="keyword">const</span> uint16_t* TX_data, uint16_t* RX_data);</div>
<div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160;<span class="keywordtype">void</span> _spi_drv_exchange_dspi2(<span class="keyword">const</span> uint16_t* TX_data, uint16_t* RX_data);</div>
<div class="line"><a name="l00533"></a><span class="lineno">  533</span>&#160;<span class="keywordtype">void</span> _spi_drv_exchange(uint8_t i, <span class="keyword">const</span> uint16_t* TX_data, uint16_t* RX_data);</div>
<div class="line"><a name="l00534"></a><span class="lineno">  534</span>&#160;</div>
<div class="line"><a name="l00535"></a><span class="lineno">  535</span>&#160;<span class="keywordtype">void</span> _spi_drv_write_dspi0(<span class="keyword">const</span> uint16_t* TX_data); </div>
<div class="line"><a name="l00536"></a><span class="lineno">  536</span>&#160;<span class="keywordtype">void</span> _spi_drv_write_dspi1(<span class="keyword">const</span> uint16_t* TX_data); </div>
<div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;<span class="keywordtype">void</span> _spi_drv_write_dspi2(<span class="keyword">const</span> uint16_t* TX_data); </div>
<div class="line"><a name="l00538"></a><span class="lineno">  538</span>&#160;<span class="keywordtype">void</span> _spi_drv_write(uint8_t i, <span class="keyword">const</span> uint16_t* TX_data);</div>
<div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;</div>
<div class="line"><a name="l00540"></a><span class="lineno">  540</span>&#160;<span class="keywordtype">void</span> _spi_drv_read_dspi0(uint16_t* RX_data);</div>
<div class="line"><a name="l00541"></a><span class="lineno">  541</span>&#160;<span class="keywordtype">void</span> _spi_drv_read_dspi1(uint16_t* RX_data);</div>
<div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160;<span class="keywordtype">void</span> _spi_drv_read_dspi2(uint16_t* RX_data);</div>
<div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160;<span class="keywordtype">void</span> _spi_drv_read(uint8_t i, uint16_t* RX_data);</div>
<div class="line"><a name="l00544"></a><span class="lineno">  544</span>&#160;</div>
<div class="line"><a name="l00545"></a><span class="lineno">  545</span>&#160;<span class="keywordtype">void</span> _spi_drv_show_dspi0(<span class="keyword">const</span> uint16_t* TX_data, int8_t intrpt_en);</div>
<div class="line"><a name="l00546"></a><span class="lineno">  546</span>&#160;<span class="keywordtype">void</span> _spi_drv_show_dspi1(<span class="keyword">const</span> uint16_t* TX_data, int8_t intrpt_en);</div>
<div class="line"><a name="l00547"></a><span class="lineno">  547</span>&#160;<span class="keywordtype">void</span> _spi_drv_show_dspi2(<span class="keyword">const</span> uint16_t* TX_data, int8_t intrpt_en);</div>
<div class="line"><a name="l00548"></a><span class="lineno">  548</span>&#160;</div>
<div class="line"><a name="l00549"></a><span class="lineno">  549</span>&#160;<span class="comment">//Array Transfering</span></div>
<div class="line"><a name="l00550"></a><span class="lineno">  550</span>&#160;<span class="keywordtype">void</span> _spi_drv_exchange_array_dspi0(<span class="keyword">const</span> uint16_t* TX_data, uint16_t* RX_data, int8_t size, int8_t intrpt_en);</div>
<div class="line"><a name="l00551"></a><span class="lineno">  551</span>&#160;<span class="keywordtype">void</span> _spi_drv_exchange_array_dspi1(<span class="keyword">const</span> uint16_t* TX_data, uint16_t* RX_data, int8_t size, int8_t intrpt_en);</div>
<div class="line"><a name="l00552"></a><span class="lineno">  552</span>&#160;<span class="keywordtype">void</span> _spi_drv_exchange_array_dspi2(<span class="keyword">const</span> uint16_t* TX_data, uint16_t* RX_data, int8_t size, int8_t intrpt_en);</div>
<div class="line"><a name="l00553"></a><span class="lineno">  553</span>&#160;<span class="keywordtype">void</span> _spi_drv_exchange_array(uint8_t i, <span class="keyword">const</span> uint16_t* TX_data, uint16_t* RX_data, int8_t size, int8_t intrpt_en);</div>
<div class="line"><a name="l00554"></a><span class="lineno">  554</span>&#160;</div>
<div class="line"><a name="l00555"></a><span class="lineno">  555</span>&#160;<span class="keywordtype">void</span> _spi_drv_write_array_dspi0(<span class="keyword">const</span> uint16_t* TX_data ,int8_t size, int8_t intrpt_en);</div>
<div class="line"><a name="l00556"></a><span class="lineno">  556</span>&#160;<span class="keywordtype">void</span> _spi_drv_write_array_dspi1(<span class="keyword">const</span> uint16_t* TX_data ,int8_t size, int8_t intrpt_en);</div>
<div class="line"><a name="l00557"></a><span class="lineno">  557</span>&#160;<span class="keywordtype">void</span> _spi_drv_write_array_dspi2(<span class="keyword">const</span> uint16_t* TX_data ,int8_t size, int8_t intrpt_en);</div>
<div class="line"><a name="l00558"></a><span class="lineno">  558</span>&#160;<span class="keywordtype">void</span> _spi_drv_write_array(uint8_t i, <span class="keyword">const</span> uint16_t* TX_data ,int8_t size, int8_t intrpt_en);</div>
<div class="line"><a name="l00559"></a><span class="lineno">  559</span>&#160;</div>
<div class="line"><a name="l00560"></a><span class="lineno">  560</span>&#160;<span class="keywordtype">void</span> _spi_drv_read_array_dspi0(uint16_t* RX_data, int8_t size, int8_t intrpt_en);</div>
<div class="line"><a name="l00561"></a><span class="lineno">  561</span>&#160;<span class="keywordtype">void</span> _spi_drv_read_array_dspi1(uint16_t* RX_data, int8_t size, int8_t intrpt_en);</div>
<div class="line"><a name="l00562"></a><span class="lineno">  562</span>&#160;<span class="keywordtype">void</span> _spi_drv_read_array_dspi2(uint16_t* RX_data, int8_t size, int8_t intrpt_en);</div>
<div class="line"><a name="l00563"></a><span class="lineno">  563</span>&#160;<span class="keywordtype">void</span> _spi_drv_read_array(uint8_t i, uint16_t* RX_data, int8_t size, int8_t intrpt_en);</div>
<div class="line"><a name="l00564"></a><span class="lineno">  564</span>&#160;</div>
<div class="line"><a name="l00565"></a><span class="lineno">  565</span>&#160;<span class="keywordtype">void</span> _spi_drv_listen_dspi0(uint16_t* RX_data, int8_t size, int8_t intrpt_en);</div>
<div class="line"><a name="l00566"></a><span class="lineno">  566</span>&#160;<span class="keywordtype">void</span> _spi_drv_listen_dspi1(uint16_t* RX_data, int8_t size, int8_t intrpt_en);</div>
<div class="line"><a name="l00567"></a><span class="lineno">  567</span>&#160;<span class="keywordtype">void</span> _spi_drv_listen_dspi2(uint16_t* RX_data, int8_t size, int8_t intrpt_en);</div>
<div class="line"><a name="l00568"></a><span class="lineno">  568</span>&#160;<span class="keywordtype">void</span> _spi_drv_listen(uint8_t i, uint16_t* RX_data, int8_t size, int8_t intrpt_en);</div>
<div class="line"><a name="l00569"></a><span class="lineno">  569</span>&#160;</div>
<div class="line"><a name="l00570"></a><span class="lineno">  570</span>&#160;<span class="keywordtype">void</span> _spi_drv_listen_till_dspi0(uint16_t* RX_data, uint16_t end_data, int8_t intrpt_en);</div>
<div class="line"><a name="l00571"></a><span class="lineno">  571</span>&#160;<span class="keywordtype">void</span> _spi_drv_listen_till_dspi1(uint16_t* RX_data, uint16_t end_data, int8_t intrpt_en);</div>
<div class="line"><a name="l00572"></a><span class="lineno">  572</span>&#160;<span class="keywordtype">void</span> _spi_drv_listen_till_dspi2(uint16_t* RX_data, uint16_t end_data, int8_t intrpt_en);</div>
<div class="line"><a name="l00573"></a><span class="lineno">  573</span>&#160;<span class="keywordtype">void</span> _spi_drv_listen_till(uint8_t i, uint16_t* RX_data, uint16_t end_data, int8_t intrpt_en);</div>
<div class="line"><a name="l00574"></a><span class="lineno">  574</span>&#160;</div>
<div class="line"><a name="l00575"></a><span class="lineno">  575</span>&#160;<span class="keywordtype">void</span> _spi_drv_show_array_dspi0(<span class="keyword">const</span> uint16_t* TX_data, int8_t size, int8_t intrpt_en);</div>
<div class="line"><a name="l00576"></a><span class="lineno">  576</span>&#160;<span class="keywordtype">void</span> _spi_drv_show_array_dspi1(<span class="keyword">const</span> uint16_t* TX_data, int8_t size, int8_t intrpt_en);</div>
<div class="line"><a name="l00577"></a><span class="lineno">  577</span>&#160;<span class="keywordtype">void</span> _spi_drv_show_array_dspi2(<span class="keyword">const</span> uint16_t* TX_data, int8_t size, int8_t intrpt_en);</div>
<div class="line"><a name="l00578"></a><span class="lineno">  578</span>&#160;<span class="keywordtype">void</span> _spi_drv_show_array(uint8_t i, <span class="keyword">const</span> uint16_t* TX_data, int8_t size, int8_t intrpt_en);</div>
<div class="line"><a name="l00579"></a><span class="lineno">  579</span>&#160;</div>
<div class="line"><a name="l00580"></a><span class="lineno">  580</span>&#160;<span class="comment">//&#39;Private&#39; methods</span></div>
<div class="line"><a name="l00581"></a><span class="lineno">  581</span>&#160;</div>
<div class="line"><a name="l00582"></a><span class="lineno">  582</span>&#160;<span class="keywordtype">void</span> _spi_drv_set_masterslave(uint8_t i, uint8_t master);</div>
<div class="line"><a name="l00583"></a><span class="lineno">  583</span>&#160;</div>
<div class="line"><a name="l00584"></a><span class="lineno">  584</span>&#160;<span class="keywordtype">void</span> _spi_drv_clr_flags(uint8_t i);</div>
<div class="line"><a name="l00585"></a><span class="lineno">  585</span>&#160;</div>
<div class="line"><a name="l00586"></a><span class="lineno">  586</span>&#160;<span class="comment">//Interrupt Handlers</span></div>
<div class="line"><a name="l00587"></a><span class="lineno">  587</span>&#160;</div>
<div class="line"><a name="l00588"></a><span class="lineno">  588</span>&#160;<span class="keywordtype">void</span> _spi_drv_tci_dspi0(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00589"></a><span class="lineno">  589</span>&#160;<span class="keywordtype">void</span> _spi_drv_tci_dspi1(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00590"></a><span class="lineno">  590</span>&#160;<span class="keywordtype">void</span> _spi_drv_tci_dspi2(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00591"></a><span class="lineno">  591</span>&#160;<span class="keywordtype">void</span> _spi_drv_tci(uint8_t i);</div>
<div class="line"><a name="l00596"></a><span class="lineno">  596</span>&#160;<span class="preprocessor">#endif</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_587c94d866dbb2f408f78cf41f9b2f8d.html">drv</a></li><li class="navelem"><a class="el" href="spi__drv_8h.html">spi_drv.h</a></li>
    <li class="footer">Generated on Mon Aug 19 2013 09:51:11 for SPI Driver by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.4 </li>
  </ul>
</div>
</body>
</html>
